Techniques for protecting digital information against unauthorized access are becoming increasingly important as more and more communications systems are employing digital transmission techniques. The subscription television industry, for example, is beginning to move toward all digital transmission systems or hybrid systems that employ both digital and analog transmission. Preventing unauthorized access to digital television signals is a major concern in the subscription television industry.
Cryptography can provide a very secure means of preventing unauthorized access. The art of cryptography is well known. "Stream-cipher cryptography" is particularly well suited for encrypting digital data to prevent unauthorized access. FIG. 1 shows an exemplary system 10 that employs stream-cipher cryptography. The system 10 comprises a data encryptor 12 for encrypting a clear data stream, a data decryptor 18 for subsequently decrypting the encrypted data stream, and a transmission medium 11 for transmitting the encrypted data stream from the encryptor 12 to the decryptor 18. The encryptors 12, 18 are commonly referred to in the art as "stream-ciphers."
As shown, data encryptor 12 comprises a pseudorandom bit generator 14 and a data combiner 16. At an input thereof, the pseudorandom bit generator 14 receives a unique encryption key K. Using the encryption key K as a "seed" value, the pseudorandom bit generator 14 generates a pseudorandom binary sequence commonly referred to as a "key stream". The key stream is then fed to one input of the combiner 16 which also receives, at another input thereof, the clear data stream. The combiner 16 combines or mixes the clear data stream with the key stream on a bit-by-bit basis using bitwise modulo-2 addition; that is, the combiner 16 comprises an exclusive-OR (XOR) gate. Combining the clear data stream with the key stream in this manner effectively encrypts the clear data stream. As shown, the encrypted data stream may then be transmitted via any suitable transmission medium 11.
A decryptor 18 operates to recover the clear data stream from the encrypted data stream. As shown, the decryptor 18 comprises a pseudorandom bit generator 14' and a de-combiner 16'. As those skilled in the art know, the decryptor 18 must be provided with the same encryption key K that was used to encrypt the data at the encryptor 12, and pseudorandom bit generator 14' must be identical to pseudorandom bit generator 14 so that with that same encryption key K, the pseudorandom bit generator 14' can reproduce the key stream generated at the encryptor 12. The reproduced key stream and the encrypted data stream are then provided to respective inputs of the de-combiner 16'. Decombiner 16' must operate in a reciprocal or complimentary manner with respect to the combiner 16 in the encryptor 12 so that the encryption process is effectively reversed. As those skilled in the art know, when combiner 16 performs bit-wise modulo-2 addition (i.e., XOR-ing), de-combiner 16' may be identical to combiner 16 since the XOR function is symmetrical. Thus, XOR-ing the encrypted data stream with the reproduced key stream effectively reverses the encryption process. The clear data stream is then output from the decombiner 16'.
As can be appreciated from the foregoing discussion, the system 10 cannot function unless both the encryptor 12 and decryptor 18 are each provided with the unique encryption key K. Security depends, therefore, on keeping the encryption key secret. Such a system is commonly referred to as a "private key" encryption system. One way to enhance security in a "private key" encryption system is to periodically change the encryption key. Security also depends on the "randomness" of the key stream generated by the pseudorandom bit generators. A system developer must select a pseudorandom bit generation algorithm that cannot feasibly be deduced by comparing the clear data stream with the encrypted data stream. Generally, greater randomness can be achieved with an algorithm that uses large encryption keys (i.e., more bits) rather than shorter keys.
In most applications, an encryptor is employed at a transmission site to encrypt a data stream for transmission to a remote reception site. The reception site, of course, must employ a decryptor in order to recover the clear data from the encrypted data. Because the reception site is remote from the transmission site, a secure means must be employed for providing the reception site with the appropriate encryption key. For example, the encryption key itself may be encrypted and then transmitted to the reception site. Once the key is received at the reception site, it must be stored in a secure memory device at the reception site. Alternatively, the key may be pre-stored in the secure memory.
Communication systems often comprise a plurality of different transmission sites that each transmit a set of data to one or more reception sites. For example, in a subscription television system, a plurality of "programmers" each provide subscription television services (i.e., programs) to remote subscribers. Each programmer typically will want to employ its own unique encryption keys to encrypt data at its respective transmission site. When the system contains a large number of transmission sites, providing each transmission site with a unique encryption key may become prohibitive. As mentioned above, it is desirable to employ large encryption keys in order to increase the cryptographic strength of the system. A problem arises because each of the unique encryption keys must be stored in a secure memory at a reception site so that a decryptor at the reception site is able to decrypt data received from any one of the transmission sites. As those skilled in the art know, secure memory is expensive and secure memory devices typically have limited storage capacities. There is a need, therefore, for a system and method that allows a large number of transmission sites to each uniquely encrypt data, but which reduces the amount of memory needed at a reception site to store encryption keys. The present invention satisfies this need.